package com.cnap.model.cloud;

import com.cnap.utils.JsonUtil;

import java.util.List;
import java.util.Map;

/**
 * <类文件描述>
 *
 * @author xc
 **/
public class CreateCloudParam {
    // 错误信息（不使用）
    private String errorMsg;
    // 额外信息（不使用）
    private Map<String, String> extraInfos;
    // 服务id
    private String svcId;
    // 阶段值
    private String type;
    // 虚机信息
    private List<CloudVmModel> vmModels;

    // 用户名称
    private String userName;
    // 分类
    private String category;
    // 应用id
    private String appId;

    // k8s中的微服务名称
    private String svcName;
    // CPU GPU
    private String arch;

    //创建者
    private String accountName;
    // public private
    private String cloudScope;

    /**
     * get
     *
     * @return CloudScope
     */
    public String getCloudScope() {
        return cloudScope;
    }

    /**
     * set
     *
     * @param cloudScope cloudScope
     */
    public void setCloudScope(String cloudScope) {
        this.cloudScope = cloudScope;
    }

    /**
     * get
     *
     * @return Arch
     */
    public String getArch() {
        return arch;
    }

    /**
     * set
     *
     * @param arch arch
     */
    public void setArch(String arch) {
        this.arch = arch;
    }

    /**
     * get
     *
     * @return AccountName
     */
    public String getAccountName() {
        return accountName;
    }

    /**
     * set
     *
     * @param accountName accountName
     */
    public void setAccountName(String accountName) {
        this.accountName = accountName;
    }

    /**
     * get
     *
     * @return SvcName
     */
    public String getSvcName() {
        return svcName;
    }

    /**
     * set
     *
     * @param svcName svcName
     */
    public void setSvcName(String svcName) {
        this.svcName = svcName;
    }

    /**
     * get
     *
     * @return AppId
     */
    public String getAppId() {
        return appId;
    }

    /**
     * set
     *
     * @param appId appId
     */
    public void setAppId(String appId) {
        this.appId = appId;
    }

    /**
     * get
     *
     * @return Category
     */
    public String getCategory() {
        return category;
    }

    /**
     * set
     *
     * @param category category
     */
    public void setCategory(String category) {
        this.category = category;
    }

    /**
     * get
     *
     * @return UserName
     */
    public String getUserName() {
        return userName;
    }

    /**
     * set
     *
     * @param userName userName
     */
    public void setUserName(String userName) {
        this.userName = userName;
    }

    /**
     * get
     *
     * @return ErrorMsg
     */
    public String getErrorMsg() {
        return errorMsg;
    }

    /**
     * set
     *
     * @param errorMsg errorMsg
     */
    public void setErrorMsg(String errorMsg) {
        this.errorMsg = errorMsg;
    }

    /**
     * get
     *
     * @return ExtraInfos
     */
    public Map<String, String> getExtraInfos() {
        return extraInfos;
    }

    /**
     * set
     *
     * @param extraInfos extraInfos
     */
    public void setExtraInfos(Map<String, String> extraInfos) {
        this.extraInfos = extraInfos;
    }

    /**
     * get
     *
     * @return SvcId
     */
    public String getSvcId() {
        return svcId;
    }

    /**
     * set
     *
     * @param svcId svcId
     */
    public void setSvcId(String svcId) {
        this.svcId = svcId;
    }

    /**
     * get
     *
     * @return Type
     */
    public String getType() {
        return type;
    }

    /**
     * set
     *
     * @param type type
     */
    public void setType(String type) {
        this.type = type;
    }

    /**
     * get
     *
     * @return VmModels
     */
    public List<CloudVmModel> getVmModels() {
        return vmModels;
    }

    /**
     * set
     *
     * @param vmModels vmModels
     */
    public void setVmModels(List<CloudVmModel> vmModels) {
        this.vmModels = vmModels;
    }


    @Override
    public String toString() {
        return JsonUtil.objectToJsonStr(this);
    }
}
